package com.bite.common.utils;

import com.alibaba.fastjson2.JSON;
import lombok.extern.slf4j.Slf4j;
import org.springframework.util.StringUtils;

@Slf4j
public class JsonUtil<T> {
    /**
     * 序列化
     */
    public static String toJSON(Object obj) {
        try {
            return obj == null ? null : JSON.toJSONString(obj);
        } catch (Exception e) {
            log.error("json序列化错误", e);
            return null;
        }
    }

    /**
     * 反序列化
     */
    public static <T> T parseJson(String json, Class<T> clazz) {
        if(!StringUtils.hasLength(json) || clazz == null) {
            return null;
        }
        try {
            return JSON.parseObject(json, clazz);
        } catch (Exception e) {
            log.error("json反序列化错误", e);
            return null;
        }
    }
}
